// 引入专门处理登录的接口
// import { req_login } from "@/api/registerLogin";
import {req_login} from '@/api/registerLogin';

export default {
    async login_a({commit},{user_name,password,routerT}){
        // actiosn 中要完成的工作 发送登录请求 将请求回来的数据存放到vuex
        // 实质上是将数据存放到state当中但是由于不能直接进行存储 需要经过mutations进行操作
        // login_obj 是登录时传递进来的用户名和密码

        // 要在actions中发送ajax请求 如果要发送登录的Ajax请求 需要先收集到用户名和密码
        // login_a需要在组件当中进行触发并且将用户名和密码传递给actions中的login_a
        // 组件触发actions当中的方法 dispatch进行触发
        console.log(user_name,password,routerT);
        // 收到用户名和密码 发送Ajax
        // let result =await req_login({
        //     method:'post',
        //     url:'/login',
        //     arg:login_obj,
        //     headerType:'form'
        // })
        // console.log(result);
        // 进行接口分类的作用是使协同开发或者接你盘的人 方便读取代码 方便其他人也方便自己改动代码
        // 所有的请求都是通过request函数发送
        console.log(req_login);
        let result = await req_login({
            method:'post',
            url:'/login',
            arg:{user_name,password},
            headerType:'form'
        })
        console.log(result);
        if(result.data.info == '登录成功！！'){
            // 登录成功之后进行跳转
            routerT.push({
                name:'home'
            })
        }
        // 得到成功的值之后需要做的任务：
        // 将info user_name token 传递给mutations login函数进行state当中对应值的修改
        // commit 触发mutations当中login函数对应的参数是用户名和info token
        // console.log(commit);
        commit('login',{
            user_name,
            info:result.data.info,
            token:result.data.token
        })
        // console.log(commit);
       
    }
}